home *** CD-ROM | disk | FTP | other *** search
/ Aminet 1 (Walnut Creek) / Aminet - June 1993 [Walnut Creek].iso / aminet / comm / misc / zedzapbin_1_00.lha / zedzap.doc < prev   
Text File  |  1992-12-22  |  8KB  |  211 lines

  1.  
  2. The xprzedzap.library is public domain and is not copyrighted. You may do
  3. with it as you please.
  4.  
  5. Disclaimer:
  6. The programmer of this library takes no responsibilty for any problems
  7. or damages resulting from the use thereof.
  8.  
  9. Credits:
  10. Chuck Forsberg            ZModem primitives
  11. Rick Huebner              Adaptation to Amiga XPR protocol spec
  12. William M. Perkins        Addition of CRC-32 routines
  13. Russell McOrmond          Refusal to use this version with Welmat
  14.                           Minor changes and additions (primarily related to
  15.                           file IO and the XPR 3.0 specs that are currently
  16.                           being developed)
  17. Yves Konigshofer          Addition of primary ZedZap/ZedZip functions
  18.                           Addition of optional DirectZap
  19.  
  20. XProtocolSetup options:
  21.  
  22.  T = Text Mode
  23.  
  24.     TY = Force text mode on
  25.     TN = Force text mode off
  26.     T? = Use other end's text mode suggestion (default to binary)
  27.     TC = Ask comm program for file type
  28.  
  29.  O = Overwrite Mode
  30.  
  31.     OY = Yes, delete old file and replace with new one
  32.     ON = No, prevent overwrite by appending ".dup"
  33.     OR = Resume transfer at end of existing file
  34.     OS = Skip file if it already exists; go on to next
  35.  
  36.  B = File Buffer
  37.  
  38.     Size of the file I/O buffer in kilobytes
  39.  
  40.  F = Framelength
  41.  
  42.     Number of bytes we're willing to send or receive between ACKs
  43.  
  44.  E = Error Limit
  45.  
  46.     Number of SEQUENTIAL errors that will cause an abort (max 32767)
  47.  
  48.  A = Auto-Actiave Mode
  49.  
  50.     AY = Auto-Activate if ZRQINIT is received
  51.     AN = Don't look for ZRQINIT
  52.  
  53.  D = Delete-After-Sending Mode
  54.  
  55.     DY = Delete files after successfully sending them
  56.     DN = Don't delete files after sending
  57.  
  58.  K = Keep-Partial-Files Mode
  59.  
  60.     KY = Keep partially-received file fragments to allow later resumtion
  61.     KN = Delete partially-received file fragments
  62.  
  63.  S = Send-Path Mode
  64.  
  65.     SY = Send full filename including directory path
  66.     SN = Send only the filename
  67.  
  68.  R = Receive-Path Mode
  69.  
  70.     RY = Use full filename exactly as received; don't use P option path
  71.     RN = Ignore received directory path if any; use path from P instead
  72.  
  73.  C = Different BPS Rate
  74.  
  75.     It may happen that your XPR interface does not tell the library the
  76.     current baud rate. If this field is used then the specified BPS rate
  77.     will be used instead of what is found in v->Baud (this will then
  78.     also influence the block length when sending). This value must lie
  79.     between 300 and 57600.
  80.  
  81.  N = Send-No-Files Mode
  82.  
  83.     ZedZap requires the ability to send no file at all. If this option
  84.     used then a ZFIN is sent as soon as the transfer is started. Use
  85.     this option if you plan on using this library for ZedZap or ZedZip
  86.     transfers on Fidonet.
  87.  
  88.     NY = Pretend a transfer if there are no files to be sent (Fidonet)
  89.     NN = Behave like Zmodem would in this situation (normal)
  90.  
  91.  M = Maximum Block Size
  92.  
  93.     This determines the maximum block size that can be used while sen-
  94.     ding. The limit is 8192 bytes which is required for ZedZap transfers.
  95.  
  96.  L = Fall-back/Fall-forward Mode
  97.  
  98.     LY = Allow the block length to change as errors occur while sending
  99.     LN = Never change the block length
  100.     LB = Allow the block length to only fall back when errors occur
  101.     LF = Allow the block length to only fall forward (???)
  102.  
  103.  U = Dos.Library Mode
  104.  
  105.     UY = Yes, open the dos.library and then perhaps try to open a window
  106.     UN = No, don't open the dos.library
  107.  
  108.  G = GoodNeeded
  109.     (v 1.00)
  110.     This determines the amount of bytes that must be successfully sent
  111.     in order to increase the block size. The default for this is 8192
  112.     bytes.
  113.  
  114.  I = Initial Block Size
  115.     (v 1.00)
  116.     This determines the block size that will be used at the start of the
  117.     transfer. The default for this is 1024 bytes (the block size will
  118.     gradually increase towards the maximum block size during the file
  119.     transfer provided that not too many errors appear)
  120.  
  121.  W = Open Window Mode
  122.     (v 1.00)
  123.     If the dos library is opened then this determines if a window is
  124.     opened to view the progress of the transfer. This can be helpful if
  125.     your comm. program does not give enough information during the
  126.     transfer. The type of window that is opened is determined by getting
  127.     and using the data from the file ZedZapWindow which is preceded by
  128.     the what is defined by option 'V'. If option 'V' is set to "ENV:1."
  129.     then the xprzedzap.library will attempt to open the file by the
  130.     name "ENV:1.ZedZapWindow" which should contain the required para-
  131.     meters for a CON: or RAW: window. (see ENV: variables below)
  132.  
  133.  Q = Quick DirectZap
  134.     (v 1.00)
  135.     This is the big addition to version 1.00. By enabling this option
  136.     you are telling the library to ONLY use the ZModem escape sequence
  137.     (CAN/ZDLE/0x18) on a CAN/ZDLE/0x18. This means that DLE/XON/XOFF
  138.     (and DLE+128/XON+128/XOFF+128) will NOT be escaped. The CR after
  139.     a '@' will also not be escaped. Therefore you MAY NOT use any kind
  140.     of SOFTWARE FLOW-CONTROL (such as XON/XOFF) because these bytes
  141.     are not being sent to the modem without being converted to something
  142.     else!
  143.     If this option is not used, then maximum transfer speeds using a
  144.     block size of 1024 and 32bit CRC would be:
  145.     1024 / ((1024/256*7) + 1024 + 2 + (4/256*7) + 4) = 1024/1058 = 96.8%
  146.     If on the other hand only 1 byte can be escaped (instead of the 7
  147.     in the prior example) the maximum transfer speed would be:
  148.     1024 / ((1024/256*1) + 1024 + 2 + (4/256*1) + 4) = 1024/1034 = 99.0%
  149.     Is is now important to mention that these throughput rates are under
  150.     ideal conditions where disk IO would not slow the transfers down
  151.     through reads/writes. These rates can also be higher is data com-
  152.     pression is used, but at 2400bps (without any sort of data compres-
  153.     sion or correction) the cps rates with VLT are usually about 236
  154.     as opposed to 232 (just a tiny difference).
  155.  
  156.     IMPORTANT: Using DirectZap does NOT work with all receiving ZModem
  157.     programs. In such cases an error is usually reported by the remote
  158.     receiver after the first few data blocks. This has to due with the
  159.     fact that some ZModem implementations require the before-mentioned
  160.     characters to be 'escaped'.
  161.  
  162.  V = ENV: Variable Start
  163.  
  164.     This string (up to about 25 letters) is  what the variables that the
  165.     xprzedzap.library  will open  start  with. If  this is left out, the
  166.     variables will be assumed to start with "ENV:". (you can also  relo-
  167.     cate these somewhere else)
  168.  
  169.  P = File Path
  170.  
  171.     Receive files into the therin specified directory if RN is selected
  172.  
  173. ENV: variables
  174.  
  175.     If you specify that you wish to open the dos.library, then the
  176.     xprzedzap.library will look for ENV:ZedZapWindow which should contain
  177.     something like "RAW:0/0/640/130/ZedZap/SCREEN Welmat's Public Screen".
  178.     You can set the ENV: variable by either editing a file or using the
  179.     AmigaDOS "setenv" command. This can also be set from within some
  180.     programs. This window should be at least the previously specified
  181.     size, and will contain information about the file that is being trans-
  182.     fered. If the V option is used, then the ENV: variable is required
  183.     to start with that (ie "VNode1_" would open up "Node1_ZedZapWindow".
  184.     This allows multiple windows to be opened with different appearan-
  185.     ces.
  186.     In the future, some additional options may be specifiable via ENV:
  187.     variables.
  188.  
  189. Bug Fixes:
  190.  
  191. 0.80
  192.    -8192 byte packets can now be correctly received
  193. 0.85
  194.    -supports the Welmat reccomdation of a xpru_status field
  195. 0.90
  196.    -optional dos.library functions
  197.    -customizable status window for transfers if the XPR interface does
  198.     not seem to be showing enough (like the BETA versions of Welmat)
  199.    -improved multiple program support so that multiple programs can open
  200.     the same library
  201. 1.00
  202.    (sooner or later this number has to come up... and since the library
  203.     now functions rather well... I guess I'll call it 1.00 now)
  204.    -addition DirectZap (uses Zmodem escape sequence (ZDLE) only on CAN
  205.     (ZDLE))
  206.    -changed a few return codes here and there...
  207.  
  208. -Yves Konigshofer
  209.  Fidonet#1:109/456.0
  210.  BBS: (301)469-9837
  211.